From a common user's viewpoint, cloud computing offers “unlimited” computing, storage, and network capacities. However, providing “unlimited” capacities is neither practical nor attainable. In fact, suppliers must be able to build their infrastructure in a linear and consistent way to meet cloud users' growing infrastructure demand and optimize the usage. This linear growth can be achieved through point-of-delivery. A point-of-delivery is “a network service module composed of network, computing, storage, and application components”. It is also a design pattern which can be implemented and duplicated to maximize modularity, scalability, and manageability of a data center. The difference between point-of-delivery and the other design patterns is that it is a deployable module. This module provides “services”, and all components inside the module share one and the same failure domain. In other words, if a failure occurs inside one point-of-delivery, it may only affect the projects within the point-of-delivery, and will not affect the projects outside the point-of-delivery.
The concept of point-of-delivery was first proposed by Cisco. It represents a type of fast-deployable, fast-deliverable construction module, which includes the technologies of service, security, networking, management, software virtualization, and data center interconnection. A point-of-delivery can be constructed through different types of ways. First of all it shall have a definition, namely a point-of-delivery is a duplicable physical environment, including computing, network, and application resources, etc. The most important feature of a point-of-delivery is all virtualized applications can migrate freely within it, avoiding so-called the routing-layer obstacle. For different users, point-of-delivery designs may vary, it may include all aggregation switches under a core switch inside a data center; it may be a little smaller in scale. In the former case, the entire system may achieve higher efficiency; applications can acquire resources to run freely inside a larger cluster of computers, but certainly the design itself is not very flexible. If a point-of-delivery needs 2,000 square-meter rooms, then a 1,000 square-meter room next to it will not be utilized. In the latter case, a relatively small point-of-delivery will be more flexible, but resource utilization efficiency will not go very high, since the resource scheduling is only operated in a small scale. Point-of-delivery provided by service provider's infrastructure is particularly important, for example: in a cloud computing service supported data center, point-of-delivery can help it to maintain scalability while its workloads/data volume is increasing.
The main objective of the present invention is to improve resource utilization efficiency by dynamically scheduling resources within small-scale point-of-delivery. In the present invention, point-of-delivery can be classified as logical one or physical one. Logical point-of-delivery refers to the combination of logical resources of computing, network, and storage that user's business project required. They are “subscribed” through user's specification, according to which the resources can be shared by space or by time. Physical point-of-delivery is a physical provisioning unit of datacenter network equipment through a set of resource definition and classification. The unit can work independently, and is considered as deliverable unit of resource services. That means, the basic unit of resource provisioning, is not a single physical server, a virtual server or a virtual switch, but a (meaningful) “set” of these resources. Here is a metaphor to describe the relationship between logical and physical point-of-delivery: a logical point-of-delivery is like booking a Chinese wedding banquet, the specification of which includes how many round tables for the wedding banquet, how many seats for each table, as well as how many dishes for each table, etc; the physical point-of-delivery is the actual wedding banquet where the guests and hosts enjoy the feast. The term point-of-delivery defined by Cisco actually refers to the physical point-of-delivery only. The distinction between logical and physical point-of-delivery, particularly the process of mapping the logical point-of-delivery to physical point-of-delivery is one of the major contributions of the present invention.
It's noteworthy that logical point-of-delivery has following features:
(1) A logical point-of-delivery often contains multiple “virtual servers”. “Virtual Server” means server virtualization or abstraction of a physical server, which is considered as a type of logical resource. Virtual servers are allowed to over-subscribe a physical (host) server by sharing its space or time. Software running on a physical host server to achieve space or time sharing is called “hypervisor”. On a physical host server, each virtual server has its own hardware specification, and runs independent of each other. Physical host server is invisible not only to provisioning instances of logical point-of-delivery, but also application users.
(2) Besides virtual server's hardware specification can be provisioned on-demand, virtual server's operating system can also be provisioned on-demand.
(3) Besides virtual server's operating system can be provisioned on-demand, application server (software) can also be provisioned on-demand on each over-subscribed operating system.
The present invention focuses on (1). The relationship between logical and physical resources can be summarized as following: from a business project to a logical point-of-delivery is a one-to-one mapping process; from logical point-of-delivery to physical point-of-delivery is a multiple-to-multiple mapping process. By subscribing the logical resources in a logical point-of-delivery, a project developer thus in further subscribes distributed physical resources of the physical point-of-delivery.
There are eight related patents listed below. Through brief introductions and comparison, the present invention displays novelty and creativity in following two aspects: distinguishing logical point-of-delivery from physical point-of-delivery, and proposing the method of mapping logical point-of-delivery to physical point-of-delivery; with session mechanisms, it is capable of maintaining the completeness and consistency of each project's point-of-delivery environment after the mapping processes.
(1) patent CN101398768A “Construct Method of Distributed Virtual Machine Monitor System”, by using the “latest” virtualization technology between hardware and operating system, deploys and constructs distributed virtual machine monitor system DVMM on multiple physical nodes. DVMM consolidates and virtualizes multiple computer resources and turns them into virtual resources, and unifies the management of these resources. According to application requirements, it can either integrate multiple computer resources into a single virtual machine in order to meet the resource requirements of some super computation task; or create multiple virtual machines on one computer to consolidate multiple small-scale applications onto a single machine, in order to improve resource utilization efficiency. This patent only involves server (i.e. computing resource) virtualization, but not concerns with storage resource and network resource virtualization. And the system structure is relatively simple.
(2) Patent CN101938416A “Cloud Computing Resource Scheduling Method Based on Dynamic Reconfiguration of Virtual Resources”, according to the loading information of the cloud applications collected by cloud application monitor, is able to dynamically reconfigure virtual resources, based on the loading capacity of the virtual resources and current loading volume of the cloud applications.
(3) Patent CN102170474A “Dynamic Scheduling Method and System for Virtual Resources in the Cloud Computing Network”, uses a live migration method to achieve dynamic virtual resource scheduling, dynamic load balancing, and high utilization efficiency of virtual resources through effective load balancing.
The “virtual resources” in Patent (2) and (3) only refer to virtual machines; and the “physical resources” refers to related CPU, memory, and storage (disks). While these two patents concern with virtual resource scheduling, virtual resources being scheduled only refer to computing resources, and do not involve storage and network resources.
(4) Patent CN102291445A “Cloud Computing Management System Based on Virtualized Resources”, by using B/S (Brower/Server) architecture and virtual machine technology, allows user to rent virtual machines on-demand through self-service at any place any time. It supports customized configuration of virtual machines, and helps user to use resources more effectively.
The virtual resources in Patent (4) include underlying virtual resource pool, virtual machine management modules, virtual machine server modules, and virtual machine storage modules. The patent involves server (computing resource) and storage resource virtualization, but not network resource virtualization.
(5) Patent US20080082983A1 “Method and System for Provisioning of Resources” contemplates a method of autonomous provisioning of resources of a computer system, wherein performance-critical workload of the computer system is monitored; workload suffering is detected based on comparing the performance-critical workload with defined values of performance-critical workload goals; types of missing resources are determined; additional resources available for activation are determined; the additional resources are activated, and a notification of the activation is generated for being sent to a system provider, e.g. for automated billing of the added capacity.
Patent (5) includes “(optional) virtual hardware platform.” The virtual hardware platform only refers to virtual machines (see FIG. 1 of patent US 20080082983A1). As the virtual hardware platform is “optional”, which means the system is able to work properly without virtual machines, virtualization is not the critical technology to achieve autonomous provisioning of resources of a computer system. Obviously it is quite different from the present invention, which uses virtualization as the key technology for mapping logical point-of-delivery to physical point-of-delivery.
(6) Patent CN102292698A and Patent US20100198972A1 basically have the same content: “Methods and Systems for Automated Management of Virtual Resources in a Cloud Computing Environment”. The applicant of these two patents is Citrix Systems Inc. They describe a virtual resources management system in cloud computing environments, including a host computing device communication component and a storage system communication component. The storage system communication component is executed by a storage delivery management service, communicates with a storage system adapter in a storage area network to identify a storage system in a storage area network, and directs the automated provisioning of a virtual storage resource on the identified storage system.
The “virtual resources” in Patent (6) refer to virtual storage resources only, and do not include computing resources and network resources in the cloud computing environment. The present invention involves the management of computing, storage, and network resources, which is quite different from Patent (6).
In brief, the main difference between the present invention and Patent (1)-(6) lies in the following three aspects:    1) The present invention not only involves the computing resource (server) virtualization, but also storage resource and network resource virtualization.    2) The present invention does not manage resources by the unit of single physical resource or virtual resource, but orchestrates the computing, storage, and network resources with unified scheduling based on the unit of point-of-delivery.    3) The objective of the present invention is how to maintain the completeness and consistency of each project's point-of-delivery environment within a corporate data center during the processes of mapping the logical point-of-delivery to the physical point-of-delivery; rather than focusing on the details of mapping process (that's beyond the scope of the present invention).
(7) Patent CN102347959A “System and Method of Resource Access System Based on Identity and Session”. The main objective is maintaining the identities of resource, service provider, session, and application during the resource access processes by session mechanisms.
Based on Patent (7), the present invention clarifies the relationships between various sessions, and proposes a new TINA-variation four-layer architecture, which uses session mechanisms to maintain the integrity and consistency of the point-of-delivery environments.
(8) Patent EP1091599A1 “Method for Accessing a Service Platform Such As TINA via an Internet Browser Session” describes the method of accessing a service platform such as TINA through an Internet browser session. With TINA service platform and the session mechanisms of TINA, it provides the mean to identify bilaterally the service provider and the service consumers and users, and a consistent way to identify a user, and provide the ability to subscribe, tailor, manage, and/or account his preferred services. In the end the user may access the service session via the browser session.
The concepts of service provider, service consumer, and user in Patent (8) are limited to the field of Internet. The TINA-variation architecture described by the present invention is applied to the cloud computing resource management in a corporate data center. The service target of the architecture is not simple B/S (Brower/Server) architecture systems anymore, but a variety of cloud computing resources, which is a big difference. The TINA architecture has been modified to a great extent; please see following sections for the details.